#ifndef CLOCK__H
#define CLOCK__H


#define SIZE_TIME_SLICE_FACT 250
#define SIZE_TIME_SLICE_MIN 500

#define PRIORITY_MAX 20
#define PRIORITY_DEFAULT 0
#define PRIORITY_MIN -20


/*
 * Met en place le gestionnaire de signaux passé en paramètre pour le signal envoyé par le timer
 * \param handler gestoinnaire de signaux à mettre en place
 */
void clockTicksInit(void(*handler) (int));

/*
 * Démarre l'horloge
 * \param priority la priorité du threads (influe sur la durée d'une time slice)
 */
void clockTicksStart(int priority);

/*
 * Arréte l'horloge
 */
void clockTicksStop();

#endif
